#!/bin/sh

MODNAME=tcpsynka
MODEXEC=tcpsynkad
MODINFO=/var/tmp/stats.tcpsynka

case "$1" in
  start|restart)
	. /opt/$MODNAME/etc/settings
	if [ "$1" = "restart" ]; then
            rm -f $MODINFO
	    echo -n "Restarting module $MODNAME: "
	    killall $MODEXEC 2> /dev/null
            sleep 1
            rm -f $MODINFO
	else
	    echo -n "Starting module $MODNAME: "
	fi
	if [ "$MOD_TCPSYNKA_ENABLED" != "1" -o "$MOD_TCPSYNKA_DEST" = "" -o "$MOD_TCPSYNKA_TCP_PORT" = "" ]; then
	    echo "skipped"
	    exit 0
	fi
        echo -n "Service is idle, no connection." > $MODINFO
	RETVAL=$?
        WAN_IF=`route -n | awk '$3 == "0.0.0.0" { print $8 }'`
        if [ "$WAN_IF" != "" ]; then
            unset RETVAL
            /opt/$MODNAME/bin/$MODEXEC &
	    RETVAL=$?
        fi
	if [ $RETVAL = 0 ]; then echo "done"; else echo "failed"; fi
	exit $RETVAL
	;;
  stop)
	echo -n "Stopping module $MODNAME: "
	killall $MODEXEC 2> /dev/null
	RETVAL=$?
        sleep 1
	if [ $RETVAL = 0 ]; then echo "done"; else echo "failed"; fi
        rm -f $MODINFO
	exit $RETVAL
	;;
  status)
	echo -n "Module $MODNAME is "
	if [ -f $MODINFO ]; then echo "running"; else echo "stopped"; fi
	exit $RETVAL
	;;
  defaults)
	cp /opt/$MODNAME/etc/defaults /opt/$MODNAME/etc/settings 2> /dev/null
	;;
  *)
	echo "Usage: $0 {start|stop|restart|status|defaults}"
	exit 1
esac
